package com.lishanyang.hibernate.entity;

import javax.persistence.*;
import java.util.Objects;

@Entity
@Table(name = "provincialcapital03geom", schema = "public", catalog = "postgis_24_sample")
public class Provincialcapital03GeomEntity {
    private int gid;
    private Double area;
    private Double perimeter;
    private Integer res14M0;
    private Integer res14M0I;
    private Integer gbcode;
    private String name;
    private Integer adcode93;
    private Integer adcode99;
    private Short adclass;
    private String pinyin;
    private Integer polygonid;
    private Double scale;
    private Double angle;
    private Object geom;

    @Id
    @Column(name = "gid")
    public int getGid() {
        return gid;
    }

    public void setGid(int gid) {
        this.gid = gid;
    }

    @Basic
    @Column(name = "area")
    public Double getArea() {
        return area;
    }

    public void setArea(Double area) {
        this.area = area;
    }

    @Basic
    @Column(name = "perimeter")
    public Double getPerimeter() {
        return perimeter;
    }

    public void setPerimeter(Double perimeter) {
        this.perimeter = perimeter;
    }

    @Basic
    @Column(name = "res1_4m0_")
    public Integer getRes14M0() {
        return res14M0;
    }

    public void setRes14M0(Integer res14M0) {
        this.res14M0 = res14M0;
    }

    @Basic
    @Column(name = "res1_4m0_i")
    public Integer getRes14M0I() {
        return res14M0I;
    }

    public void setRes14M0I(Integer res14M0I) {
        this.res14M0I = res14M0I;
    }

    @Basic
    @Column(name = "gbcode")
    public Integer getGbcode() {
        return gbcode;
    }

    public void setGbcode(Integer gbcode) {
        this.gbcode = gbcode;
    }

    @Basic
    @Column(name = "name")
    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    @Basic
    @Column(name = "adcode93")
    public Integer getAdcode93() {
        return adcode93;
    }

    public void setAdcode93(Integer adcode93) {
        this.adcode93 = adcode93;
    }

    @Basic
    @Column(name = "adcode99")
    public Integer getAdcode99() {
        return adcode99;
    }

    public void setAdcode99(Integer adcode99) {
        this.adcode99 = adcode99;
    }

    @Basic
    @Column(name = "adclass")
    public Short getAdclass() {
        return adclass;
    }

    public void setAdclass(Short adclass) {
        this.adclass = adclass;
    }

    @Basic
    @Column(name = "pinyin")
    public String getPinyin() {
        return pinyin;
    }

    public void setPinyin(String pinyin) {
        this.pinyin = pinyin;
    }

    @Basic
    @Column(name = "polygonid")
    public Integer getPolygonid() {
        return polygonid;
    }

    public void setPolygonid(Integer polygonid) {
        this.polygonid = polygonid;
    }

    @Basic
    @Column(name = "scale")
    public Double getScale() {
        return scale;
    }

    public void setScale(Double scale) {
        this.scale = scale;
    }

    @Basic
    @Column(name = "angle")
    public Double getAngle() {
        return angle;
    }

    public void setAngle(Double angle) {
        this.angle = angle;
    }

    @Basic
    @Column(name = "geom")
    public Object getGeom() {
        return geom;
    }

    public void setGeom(Object geom) {
        this.geom = geom;
    }

    @Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        Provincialcapital03GeomEntity that = (Provincialcapital03GeomEntity) o;
        return gid == that.gid &&
                Objects.equals(area, that.area) &&
                Objects.equals(perimeter, that.perimeter) &&
                Objects.equals(res14M0, that.res14M0) &&
                Objects.equals(res14M0I, that.res14M0I) &&
                Objects.equals(gbcode, that.gbcode) &&
                Objects.equals(name, that.name) &&
                Objects.equals(adcode93, that.adcode93) &&
                Objects.equals(adcode99, that.adcode99) &&
                Objects.equals(adclass, that.adclass) &&
                Objects.equals(pinyin, that.pinyin) &&
                Objects.equals(polygonid, that.polygonid) &&
                Objects.equals(scale, that.scale) &&
                Objects.equals(angle, that.angle) &&
                Objects.equals(geom, that.geom);
    }

    @Override
    public int hashCode() {
        return Objects.hash(gid, area, perimeter, res14M0, res14M0I, gbcode, name, adcode93, adcode99, adclass, pinyin, polygonid, scale, angle, geom);
    }
}
